The communications industry is rapidly changing to adjust to emerging technologies and ever increasing customer demand. This customer demand for new applications and increased performance of existing applications is driving communications network and system providers to employ networks and systems having greater speed and capacity (e.g., greater bandwidth). In trying to achieve these goals, a common approach taken by many communications providers is to use packet switching technology. Increasingly, public and private communications networks are being built and expanded using various packet technologies, such as Internet Protocol (IP).
In a typical packet switching system, packets are received by a layer 2 (L2) processing hardware component and placed in a packet queue. The L2 processing hardware component may perform some low-level processing on the packet, such as error detection and correction, but the filtering and routing decisions are typically made by a downstream forwarding engine component. These functions are typically placed in separate application-specific integrated circuits (ASICs), which allows, inter alia, for different L2 processing hardware components supporting different protocols to be attached to the packet processing engine, and the packet processing engine might be used in other locations in the packet processing switch, such on the egress side of a switch fabric and thus not used in conjunction with the L2 processing hardware.
Depending on the incoming line rate and arriving packet burst rate, it may be possible for the queue within the L2 processing hardware to overflow if packets are not removed from the queue fast enough (e.g., sent to the forwarding engine fast enough). In which case, typically the newly arriving packets may be dropped indiscriminately as there is no place to store them. This indiscriminate dropping of packets can be problematic as these indiscriminately dropped packets may include control packets, such as, but not limited to L2 keep-alive and routing information packets. When such control packets are dropped, the packet switching system or the system sending it traffic may interpret the incoming link or the packet switching system as being down, and then reconfigure the network. Moreover, the L2 processing hardware does not have enough knowledge to determine what packets are control packets and which packets can be dropped. For example, the route forwarding information base corresponds to higher-level protocol processing, which is typically performed by the packet forwarding engine. Thus, the L2 processing hardware does not know if a packet is a packet addressed to the packet switch control processing element (i.e., one type of control packet) or not. Needed are new methods and apparatus for reducing or eliminating this indiscriminate discarding of packets.